import Vue from 'vue'  
import Router from 'vue-router'  
import CampusBinhai from '@/views/CampusBinhai.vue'  
import CampusChashan from '@/views/CampusChashan.vue'  
import CampusYueqing from '@/views/CampusYueqing.vue'  
import Login from '@/views/Login.vue'  
import StudentSystem from '@/views/StudentSystem.vue'  
  
Vue.use(Router)  
  
const router = new Router({  
  routes: [  
    {  
      path: '/',  
      name: 'campus-binhai',  
      component: CampusBinhai  
    },  
    {  
      path: '/chashan',  
      name: 'campus-chashan',  
      component: CampusChashan  
    },  
    {  
      path: '/yueqing',  
      name: 'campus-yueqing',  
      component: CampusYueqing  
    },  
    {  
      path: '/student-system', // 修改路由名，使其更具描述性  
      name: 'student-system',  
      component: StudentSystem,  
      meta: { requiresAuth: true } // 添加一个meta字段来标记需要认证的路由  
    },  
    {  
      path: '/login',  
      name: 'login',  
      component: Login  
    },  
    // 你可以添加其他路由，比如重定向到登录页面，如果访问需要认证的路由但没有登录  
    // {  
    //   path: '*',  
    //   redirect: '/login' // 匹配所有路由，如果没有匹配到其他路由，就重定向到登录页面  
    // },  
    // 但是对于需要认证的路由，建议使用导航守卫来处理  
  ]  
})  
  
// 添加全局路由守卫来检查需要认证的路由  
router.beforeEach((to, from, next) => {  
  // 检查路由是否需要认证  
  if (to.matched.some(record => record.meta.requiresAuth)) {  
    // 这里只是示例，您可能需要检查用户的登录状态，比如使用Vuex或localStorage  
    // 假设有一个函数 isLoggedIn() 来检查用户是否已登录  
    if (!isLoggedIn()) { // 假设 isLoggedIn() 是一个检查登录状态的函数  
      next({  
        path: '/login',  
        query: { redirect: to.fullPath } // 将尝试访问的路由作为参数传递给登录页面  
      })  
    } else {  
      next() // 确保一定要调用 next()  
    }  
  } else {  
    next() // 确保一定要调用 next()  
  }  
})  
  
export default router